package br.com.pfc.mobile;

import java.util.HashMap;
import java.util.Map;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.Toast;
import br.com.pfc.mobile.comunicao.ComunicacaoCategoriaCliente;
import br.com.pfc.mobile.comunicao.ComunicacaoRegiao;
import br.com.pfc.mobile.comunicao.ComunicacaoUsuario;
import br.com.pfc.mobile.transferobject.CategoriaClienteTO;
import br.com.pfc.mobile.transferobject.RegiaoTO;
import br.com.pfc.mobile.transferobject.UsuarioTO;
import br.com.pfc.mobile.util.MobileSession;

public class PFC_MobileActivity extends Activity {
	boolean existeUsuario;
	static EditText  login;
	static EditText  senha; 
	
	/** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
    	
        super.onCreate(savedInstanceState);
        setContentView(R.layout.login);
        senha = (EditText) findViewById(R.id.edSenha);
        
        login = (EditText) findViewById(R.id.edLogin);
        ImageButton btSair = (ImageButton) findViewById(R.id.btSair);
        ImageButton btLogin = (ImageButton) findViewById(R.id.btLogin);      
      
    
        btSair.setOnClickListener(new View.OnClickListener() {
			
			public void onClick(View v) {
				onDestroy();
				
			}
		});

        btLogin.setOnClickListener(new View.OnClickListener() {

        	public void onClick(View v) {
        		UsuarioTO usuario = new UsuarioTO(login.getText().toString());
        		usuario.setSenha(senha.getText().toString());

        		ComunicacaoUsuario com = new ComunicacaoUsuario();
        		boolean valido = com.efetuarLogin(usuario);

        		if(valido){

        			MobileSession sessao = MobileSession.getInstance();
        			usuario = com.getUsuario(usuario);
        			Map mapa = sessao.getSessao();
        			mapa.put("usuarioLogado", usuario);

        			ComunicacaoRegiao comRegiao = new ComunicacaoRegiao();
        			RegiaoTO[] regioes = comRegiao.listarRegioes(usuario);
        			Map mapaRegiao = new HashMap();
        			for (int i = 0; i < regioes.length; i++) {
        				mapaRegiao.put(regioes[i].getNome(), regioes[i]);
        			}
        			mapa.put("regioes", mapaRegiao);
        			ComunicacaoCategoriaCliente comCategoria = new ComunicacaoCategoriaCliente();
        			CategoriaClienteTO[] categorias = comCategoria.listarCategoriaCliente();
        			Map mapaCategoria = new HashMap();

        			for (int i = 0; i < categorias.length; i++) {
        				mapaCategoria.put(categorias[i].getDescricao(), categorias[i]);
        			}
        			mapa.put("categorias", mapaCategoria);
        			startActivity(new Intent(PFC_MobileActivity.this,ActivityPrincipal.class));

        		}else{
        			Toast.makeText(PFC_MobileActivity.this, "Usuario invalido", Toast.LENGTH_LONG).show();
        		}
        	}
				
			
		});
        
        
 
    }
    @Override
    public void onDestroy(){
    	super.onDestroy();
    }
}